約 5,089,833 件
https://w.atwiki.jp/reginn666/pages/104.html
1.3以降のForge, FMLのサンプルmodを項目別に列挙. それぞれのmodにソースが同梱されている. forge 4.0.0.248にてコンパイルしたもの. 文字コードはBOM無しUTF-8. これらのmodはクライアント, サーバーどちらでも動くUniversal版である. FMLでの基本 Entityの追加 キーワード EntityRegistry, EntityID, EntityLiving 内容 僅かに改変されたゾンビを追加 EntityLivingSampleMod ブロックのカスタムレンダリング キーワード renderWorldBlock, renderInventoryBlock, ISimpleBlockRenderingHandler 内容 FMLでの, BaseMod.renderWorldBlock, renderInvBlockの実装 CustomRenderSampleMod TileEntityの同期 キーワード TileEntity, NBT, PacketHandler 内容 NBTでブロックの向きを保持 TileEntitySampleMod API関連 村人との取引可能なアイテムを追加 キーワード VillagerRegistry 内容 司祭(紫色の服)の村人の取引内容を追加 VillagerSampleMod EnumToolmaterial縛りをなんとかする方法をForgeAPIで解決 キーワード ForgeAPI, EnumHelper 内容 ツール類のインスタンスを生成する際, 引数に必要なEnumToolMaterialに独自のEnum定数を追加する方法 EnumHelperSampleMod プレイヤーイベントの追加 キーワード PlayerEvent, ForgeSubscribe 内容 Forgeのイベントシステムの基本的な使い方. 呼び出しと一部イベントでは機能を実装. PlayerEventSampleMod EntityLivingイベントの追加 キーワード LivingEvent, ForgeSubscribe 内容 動物, 敵性Mob, プレイヤーまで含めてEntityLiving全般に関するイベントの基本的な使い方. LivingEventSampleMod GUI関連 単純なGUI キーワード GUI, Container 内容 追加されたブロックのGUIを開くだけ. TileEntityにアイテムは保存しない. ContainerSampleMod GUIでのボタン処理 キーワード GUI, Container, PacketHandler 内容 GUIにボタンを追加, ボタンをクリックしたときに応答メッセージが表示される. ButtonSampleMod GUIでのマウスクリック時の処理 キーワード GUI, Container, PacketHandler, MouseClick 内容 GUIにクリックエリアを追加, 特定の範囲をクリックしたときに応答メッセージが表示される. MouseClickSampleMod DL先まとめ こちら
https://w.atwiki.jp/swift-matome/pages/16.html
ボタンを押した時にアラートを出すプログラム import UIKit class ViewController UIViewController { let myButton UIButton = UIButton() override func viewDidLoad() { super.viewDidLoad() } override func viewDidAppear(animated Bool) { // Viewの背景をCyanに設定する. self.view.backgroundColor = UIColor.cyanColor() // Buttonの定義する. myButton.frame = CGRectMake(0,0,200,40)//大きさ決めてる myButton.backgroundColor = UIColor.redColor() myButton.layer.masksToBounds = true myButton.setTitle("UIAlertを発動", forState UIControlState.Normal) myButton.setTitleColor(UIColor.whiteColor(), forState UIControlState.Normal) myButton.layer.cornerRadius = 20.0 myButton.layer.position = CGPoint(x self.view.frame.width/2, y 200) myButton.addTarget(self, action "onClickMyButton ", forControlEvents .TouchUpInside) // ボタンをViewに追加する self.view.addSubview(myButton) } /* ボタンイベント */ func onClickMyButton(sender UIButton){ // UIAlertControllerを作成する. let myAlert = UIAlertController(title "ボタンが押されました", message "確認", preferredStyle .Alert) // OKのアクションを作成する. let myOkAction = UIAlertAction(title "OK", style .Default) { action in println("Action OK!!") } // OKのActionを追加する. myAlert.addAction(myOkAction) // UIAlertを発動する. presentViewController(myAlert, animated true, completion nil) } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() } } ボタンを押すと設定したwebページに移動するプログラム import UIKit class ViewController UIViewController, UIWebViewDelegate { let myWebView UIWebView = UIWebView() @IBAction func mybotton(sender AnyObject) { super.viewDidLoad() // Delegateを設定する. myWebView.delegate = self // WebViewのサイズを設定する. myWebView.frame = self.view.bounds // Viewに追加する. self.view.addSubview(myWebView) // URLを設定する. let url NSURL = NSURL(string "http //www46.atwiki.jp/swift-matome/) // リクエストを作成する. let request NSURLRequest = NSURLRequest(URL url) // リクエストを実行する. myWebView.loadRequest(request) } /* Pageがすべて読み込み終わった時呼ばれる */ func webViewDidFinishLoad(webView UIWebView!) { println("webViewDidFinishLoad") } /* Pageがloadされ始めた時、呼ばれる */ func webViewDidStartLoad(webView UIWebView!) { println("webViewDidStartLoad") } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() } } 音楽再生プログラム import UIKit class ViewController UIViewController { let sEManager SEManager = SEManager() override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view, typically from a nib. } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() // Dispose of any resources that can be recreated. } @IBAction func fishTapped(sender UIButton) { var transform CGAffineTransform var duration Double var sEName String switch sender.tag{ case 1 //変形を指定(この場合は回転) transform = CGAffineTransformMakeRotation(CGFloat(0.25*M_PI))//MPI パイ //アニメーションの所要時間を指定 duration = 0.1 //1秒かけて45度か回転させる //再生する音声ファイルの指定 sEName = "j.mp3" case 2 transform = CGAffineTransformMakeScale(1.5, 1.5)//サイズを1.5倍にして元に戻す duration = 1.2 sEName = "d.mp3" case 3 transform = CGAffineTransformMakeTranslation(0, -50) duration = 0.6 sEName = "3.mp3" case 4 transform = CGAffineTransformMakeScale(1.3,1.3) duration = 1.0 sEName = "4.mp3" case 5 transform = CGAffineTransformMakeScale(1.3,1.3) duration = 1.0 sEName = "re.mp3" default transform = CGAffineTransformMakeScale(0.75, 0.75) duration = 1 sEName = "d.mp3" } UIView.animateWithDuration(duration, animations { () - Void in sender.transform = transform }) { (Bool) - Void in UIView.animateWithDuration(duration, animations { () - Void in sender.transform = CGAffineTransformIdentity }) { (Bool) - Void in } } sEManager.play(soundName sEName) } } 丸ばつgame GameScene import SpriteKit class GameScene SKScene { var turn_maru = true //ture ならまるのばん false ならばつのばん required init(coder aDecoder NSCoder!){ fatalError("NSCoder not supported") } override init(size CGSize) { super.init(size size) anchorPoint = CGPoint(x 0, y 0)//画面の左はしの座標は0,0と決まっている let background = SKSpriteNode(imageNamed "ban")//静止がを表示させている background.position = CGPoint(x 0, y 0)//ここで画像の位置を決める background.anchorPoint = CGPoint(x 0, y 0) addChild(background)//表示 } override func update(currentTime CFTimeInterval) { /* Called before each frame is rendered */ } func transform(w CGFloat) - CGFloat { switch w { case let w where 0 w w 80 return 0 case let w where 80 w w 160 return 80 case let w where 160 w w 240 return 160 default return -80 } } //画像を配置して表示するmarkメソッドをGameSceneクラスに追加する func mark(location CGPoint){ let imageName = turn_maru ? "batu" "maru" let sign = SKSpriteNode(imageNamed imageName) sign.position = CGPoint(x transform(location.x),y 160 - transform(location.y - 320)) sign.anchorPoint = CGPoint(x 0,y 0) addChild(sign) turn_maru = !turn_maru } } GameViewController.swift import UIKit import SpriteKit class GameViewController UIViewController, UIGestureRecognizerDelegate {// UIGestureRecognizerDelegateでクラスにプロトコルを追加している var scene GameScene! override func viewDidLoad() { super.viewDidLoad() let skView = view as SKView skView.multipleTouchEnabled = false scene = GameScene(size skView.bounds.size) //sceneにskView bounds sizeを作成し scene.scaleMode = .AspectFill skView.presentScene(scene)//presentSceneにGameSceneを渡す } override func shouldAutorotate() - Bool { return true } @IBAction func didTap(sender UITapGestureRecognizer) {//didTapのコード let location = sender.locationInView(view) println("tapped at \(location.x), \(location.y)") scene.mark(location) }//tapされるとタップ位置を出力 } 物体をjumpさせる import SpriteKit class GameScene SKScene { override func didMoveToView(view SKView) { /* Setup your scene here */ view.multipleTouchEnabled = false self.physicsWorld.gravity = CGVectorMake(0,-10) self.physicsBody = SKPhysicsBody(edgeLoopFromRect self.frame) let fr = SKSpriteNode(imageNamed "1.jpg") fr.setScale(0.3) fr.name = "fr" fr.physicsBody = SKPhysicsBody(circleOfRadius fr.size.height/2) fr.physicsBody?.friction = 0.5 fr.physicsBody?.restitution = 0.7 fr.physicsBody?.mass *= 0.6 //スプライトノードをシーンに追加する fr.position = convertPointFromView(view.center) self.addChild(fr) } override func touchesBegan(touches NSSet, withEvent event UIEvent) { /* Called when a touch begins */ let fr = childNodeWithName("fr") as SKSpriteNode fr.physicsBody?.velocity = CGVectorMake(0,0) fr.physicsBody?.applyImpulse(CGVectorMake(0,15)) } override func update(currentTime CFTimeInterval) { /* Called before each frame is rendered */ } }
https://w.atwiki.jp/wmpskin_sm02/pages/8.html
SQLサンプル // 1.すべての音楽ファイルを取得しname列を表示。 select name from audio // 2.すべての動画ファイルを取得しname列,width列,height列を表示。 select name, width, height from video // 3.すべての音楽ファイルを取得し、組み込み列(name,length,album,playcount等)を表示。 select * from audio // 4.すべての音楽ファイルを取得しname列,length列を表示。レコードはnameで昇順ソート。 select name, length from audio order by name asc // 5.すべての音楽ファイルを取得しname列,length列を表示。レコードはnameで降順ソート。 select name, length from audio order by name desc // 6.すべての音楽ファイルを取得しalbum列,name列,length列を表示。レコードはalbumで昇順、nameで降順ソート。 select album, name, length from audio order by album asc, name desc // 7.すべての音楽ファイルを取得しname列,length列を表示。レコードはランダムにソート。 select name, length from audio order by shuffle // 8.filetypeが mp3 の音楽ファイルだけを取得し、name, filetype列を表示。 select name, filetype from audio where filetype = mp3 // 9.lengthが300秒以上の音楽ファイルだけを取得し、name, length列を表示。 select name, length from audio where length = 300 // 10.nameが あ で始まる音楽ファイルだけを取得し、name, length列を表示。 select name, length from audio where name like あ% // 11.releasedateに何らかのレコードが設定されている音楽ファイルだけを取得し、name, length, releasedate列を表示。 select name, length, releasedate from audio where releasedate isnot null // 12.lastplayeddateが 2013/01/01 13 00 01 以降の動画ファイルを取得し、name, lastplayeddate列を表示。 select name, lastplayeddate from video where lastplayeddate = 2013/01/01 13 00 01 // 13.nameが あ で始まり、かつlastplayeddateが 2013/01/01 13 00 01 以降の音楽ファイルだけを // 取得し、name, length列を表示。 select name, length from audio where name like あ% and lastplayeddate = 2013/01/01 13 00 01 // 14.playcountが10以上の音楽ファイルだけを取得し、playcount, name列を表示。レコードはplaycountで降順ソート。 select playcount, name from audio where playcount = 10 order by playcount desc // 15.playcountが5以上の音楽ファイルだけを取得し、name, playcount列を表示。レコードはplaycountで昇順、nameで降順ソート。 select playcount, name from audio where playcount = 5 order by playcount, name desc // 16.列に別名を付ける select name as タイトル, length as 時間 from audio // 17.すべての音楽ファイルを対象にlengthでソートし、先頭の10件取得しname列を表示。 select name from audio order by length option top 10 // 18.すべての音楽ファイルを対象にnameでソートし、2件目のレコードから5件取得しname列を表示。 select name from audio order by length option limit 1, 5 // 19.bから始まるタイトルの音楽ファイルを取得し、name列を表示。合計再生時間が1時間(3600秒)に収まるように先頭から絞り込む select name, length from audio where name like b% option totallength 3600 // 20.音楽ファイルを取得し、更にartist列のランダムな値をつかい、レコードを絞り込む。 select artist, title from audio option randomselectfrom artist // 21.toStar関数を使い、自分の評価が☆3の検索を実行する。 select name, length, rating from audio where rating = toStar(3) // 22.today系の関数を使い、最終再生日が5日前以降の検索する。 select name, lastplayeddate from audio where lastplayeddate = TodayFirst(-5) order by lastplayeddate // 23.CurrentValue関数を使い、現在再生中のメディアと同じ日以降にライブラリに追加したメディアを検索する。 select adddate, name from video where adddate = CurrentValue() order by adddate, name // 24.RandomValue関数を使い、genreからランダムな値を取得してメディアを検索する。 select name, album from audio where genre = RandomValue() // 25.convert関数を使い、length列の出力結果を加工する。※「結果タブ出力」の場合のみ変換実施。 select name, length, convert(length) from audio option top 100 // 26.expandを使い、「ユーザ定義の再生リスト1」からデータ取得 select name, length expand ユーザ定義の再生リスト1 // 27.expandを使い、「ユーザ定義の再生リスト1」「ユーザ定義の再生リスト2」からデータ取得 select name, length expand ユーザ定義の再生リスト1 , ユーザ定義の再生リスト2 // 28.expandを使い、現在再生中のプレイリストからデータ取得 select name, length expand current // 29.expandを使い、SQL検索画面のプレイリストビューに設定されたプレイリストからデータ取得 select name, length expand playlistview // 30.expandを使い、1番目のブックマークを含むプレイリストからデータ取得 select name expand bookmark1 // 31.expandを使い、スタックボードからデータ取得 select name, length expand stackboard
https://w.atwiki.jp/skyrim_mod/pages/72.html
SkyrimのMODのチュートリアル記事になっていれば自分のブログ等のリンクでも歓迎です。 レベルデザイン モデリング アニメーションリギング Nifアニメーション キャラ関連 AI インストーラー その他 レベルデザイン LOD作成チュートリアル:地形編 by tamu75 ブリーズホームに本棚設置 by Sheryl 荒野にマイホームを建てる-地形の編集 by Sheryl レンダーウィンドウの操作とオブジェクトの設置 by tw0527 ダンジョンのベースを作る by tw0527 ダンジョンの部屋を作る by tw0527 チュートリアルではないですが、家等で使えるリソース群。 TES Alliance(要登録)のリソース Nexusのリソース モデリング Skyrim Blender Import/Exportビデオチュートリアル(Youtube) by NPR (kurese) 髪作成メモ by tktk 自作髪型MODチュートリアル by kuromimi 髪作成チュートリアル by RAN46 モーフ関連作成資料 by ひみか SkyrimのアニメーションをBlenderで編集する手順メモ(ダウンロード) 雲模様やノイズでテクスチャ作成 http //p.twipple.jp/1rDMIとhttp //p.twipple.jp/LA6uU byNPR ChunkMergeを使ったコリジョンの作成チュートリアル by tamu75 アニメーション リギング リギングメモ by tktk Nifアニメーション アニメーション付きnif作成 前半 後半 by Ponzu ボーン付きアニメーションオブジェクトの作成方法(ダウンロード。サンプル付き) by Cotyonoyume キャラ関連 ECEを使ったファイル独立型フォロワー作成方法(新方式) by tktk テクスチャやメッシュをバニラから独立させたフォロワーの作成チュートリアルです。 自作フォロワー作成 by 手羽先 主にステータスの変更など。 新規音声(VoiceType)追加のチュートリアル by ナナハネ NPCの顔テクスチャを変更する(独立させる) by きのこ 選択できる会話文を追加するチュートリアル by きのこ 新規種族作成チュートリアル by ひみか 座標調整可能な新装備カテゴリ追加 by mahty AI 商人やフォロワーなどのAI設定等 by UNI インストーラー Wrye Bash Technical Readme(英語) BAINインストーラーのウィザードを記述するwizard.txtのガイド。 Guide to FOMOD scripting FOMOD形式(NMMなどのインストーラー)のインストーラーを作るガイド その他 Basic Animation Tutorial by 175 前作オブリビオンでの解説ですが、アニメーション周りは余り変わってないので参考になります。 装備品にアニメーション効果を追加する為の解説html(+サンプル) by aohige
https://w.atwiki.jp/chapati4it/pages/84.html
お知らせ JLayerを直接使うより、JLayerと同じJavaZoomで公開されているBasicPlayerを使ったほうが簡単です。 BasicPlayerを使ったサンプルはこちら MP3プレイヤーサンプル(JLayer,BasicPlayer) サンプルダウンロード 実行形式 JLayerSample.zip ソース&JLayer JLayerSampleSrc.zip ソース import java.awt.Dimension; import java.awt.FlowLayout; import java.awt.datatransfer.DataFlavor; import java.awt.dnd.DnDConstants; import java.awt.dnd.DropTarget; import java.awt.dnd.DropTargetAdapter; import java.awt.dnd.DropTargetDropEvent; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.ComponentAdapter; import java.awt.event.ComponentEvent; import java.io.BufferedInputStream; import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.util.List; import java.util.Vector; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JSeparator; import javax.swing.SwingWorker; import javazoom.jl.decoder.Bitstream; import javazoom.jl.decoder.BitstreamException; import javazoom.jl.decoder.Decoder; import javazoom.jl.decoder.Header; import javazoom.jl.decoder.JavaLayerException; import javazoom.jl.decoder.SampleBuffer; import javazoom.jl.player.AudioDevice; import javazoom.jl.player.FactoryRegistry; // JMF MP3 Plugin // http //www.oracle.com/technetwork/java/javase/download-137625.html public class JLayerSample extends JFrame { // 再生モード 停止 static final int PLAY_MODE_STOP = 0; // 再生モード 一時停止 static final int PLAY_MODE_PAUSE = 1; // 再生モード 再生 static final int PLAY_MODE_PLAY = 2; // 再生用の変数 // ファイル名 String filename; // バッファのバッファ Vector BufferModel buffer; // デコードスイングワーカー DecodeWorker decodeWorker; // 再生スイングワーカー PlayWorker playWorker; // デバイス AudioDevice dev; // デコーダ Decoder decoder; // 再生モード int playMode = 0; // Swing用変数、定数 // ボタン用テキスト 停止 final static String STOP = "Stop"; // ボタン用テキスト 再生 final static String PLAY = "Play"; // ボタン用テキスト 一時停止 final static String PAUSE = "Pause"; // タイトル final static String TITLE = "JLayerでmp3再生"; final static String FILE_NAME = "ファイル名:"; // 再生ボタン JButton bPlay; // 曲名ラベル JLabel label; // バッファモデル class BufferModel { // コンストラクタ SampleBufferからバッファとバッファの長さを取得しメンバに保存します。 public BufferModel(SampleBuffer output) { // 上書きされるのでクローンします。 buffer = output.getBuffer().clone(); length = output.getBufferLength(); } // バッファ public short[] buffer; // バッファの長さ public int length; } public static void main(String[] args) { new JLayerSample(); } // コンストラクタ public JLayerSample() { setTitle(TITLE); setDefaultCloseOperation(EXIT_ON_CLOSE); setBounds(200, 100, 300, 100); setLayout(new FlowLayout()); // ドロップターゲット設定 new DropTarget(this, DnDConstants.ACTION_COPY, new MyDropTargetListener()); // バッファのバッファ buffer = new Vector BufferModel (); // デコードスレッド開始 decodeWorker = new DecodeWorker(); decodeWorker.execute(); // 再生スレッド開始 playWorker = new PlayWorker(); playWorker.execute(); // ラベル設置 label = new JLabel(" mp3ファイルをドロップしてください。"); label.setPreferredSize(new Dimension(getWidth() - 10, 20)); add(label); add(getHr(2000, 0)); // 再生、停止ボタン設置 bPlay = new JButton(PLAY); bPlay.addActionListener(new bPlayAction()); JButton bStop = new JButton(STOP); bStop.addActionListener(new bStopAction()); add(bPlay); add(bStop); setVisible(true); addComponentListener(new ComponentAdapter() { // ウィンドウサイズが変化したらラベルのサイズ変更 @Override public void componentResized(ComponentEvent e) { label.setPreferredSize(new Dimension(getWidth() - 10, 20)); } }); } // 水平線 public JSeparator getHr(int width, int hight) { JSeparator sp = new JSeparator(JSeparator.HORIZONTAL); sp.setPreferredSize(new Dimension(width, hight)); return sp; } // 再生ボタンのアクションクラス class bPlayAction implements ActionListener { @Override public void actionPerformed(ActionEvent e) { // System.out.println("mode = " + playMode); if (playMode == PLAY_MODE_PAUSE) { // 一時停止の場合、一時停止を解除します noPause(); } else if (playMode == PLAY_MODE_STOP) { // 停止中の場合、再生開始します play(); } else if (playMode == PLAY_MODE_PLAY) { // 再生中の場合、一時停止します pause(); } } } // 停止ボタンのアクションクラス class bStopAction implements ActionListener { @Override public void actionPerformed(ActionEvent e) { stop(); } } // 一時停止 private void pause() { playMode = PLAY_MODE_PAUSE; bPlay.setText(PLAY); } // 一時停止解除 private void noPause() { playMode = PLAY_MODE_PLAY; bPlay.setText(PLAY); } // 再生 private void play() { decodeWorker.decodePause(); decodeWorker.decodeInit(); playMode = PLAY_MODE_PLAY; bPlay.setText(PAUSE); } // 停止 private void stop() { playMode = PLAY_MODE_STOP; bPlay.setText(PLAY); } // デコードワーカースレッド // デコーダクラスを腹持ちして、デコードループを呼び出し // デコーダクラスのポーズと初期化を中継します class DecodeWorker extends SwingWorker Object, Object { public MyDecoder myDecoder = new MyDecoder(); // デコードループを呼び出します @Override protected Object doInBackground() throws Exception { myDecoder.decodeRoop(); return null; } // デコーダクラスのポーズを呼び出します public void decodePause() { myDecoder.pause(); } // デコーダクラスの初期化を呼び出します public void decodeInit() { myDecoder.init(); } } // デコーダークラス class MyDecoder { private Bitstream bitstream; public InputStream stream; // デコードフラグ boolean decodeFlg = false; // デコードを停止 public void pause() { decodeFlg = false; } // デコーダーを初期化します void init() { // System.out.println("decodeInit start"); try { // デコード停止 decodeFlg = false; // バッファクリア buffer.clear(); // ストリームクローズ closeStream(); // デコーダの初期化 openDevice(); // インプットストリーム取得 stream = getInputStream(); if (stream == null) { return; } bitstream = new Bitstream(stream); // デコード再開 decodeFlg = true; } catch (Exception e) { e.printStackTrace(); throw new RuntimeException(e); } // System.out.println("decodeInit end"); } // デバイスを取得 private void openDevice() throws JavaLayerException { try { if (dev != null) { // デバイスがnullでなければ、クローズする dev.flush(); dev.close(); } // デバイスを取得 dev = getAudioDevice(); } catch (JavaLayerException e) { // デバイスを取得できない場合エラー e.printStackTrace(); JOptionPane.showMessageDialog(null, "デバイスを取得できませんでした。" + e.getMessage(), TITLE + " エラー", JOptionPane.WARNING_MESSAGE); System.exit(1); } // デコーダーを生成して開くする decoder = new Decoder(); dev.open(decoder); } // デコードループ // エラーが起きてもぐるぐる回り続けデコードします // デコードフラグがtrue、再生モードが停止、バッファのサイズが100以上のいずれかの場合 // デコードしないでループを空回しします void decodeRoop() { decodeFlg = true; // int i = 0; while (true) { try { if (decodeFlg playMode != PLAY_MODE_STOP buffer.size() 100) { if (!decordOneFrame()) { // System.out.println("なにかエラー?"); } } // デバッグ用のログ出力 // i++; // if (i % 1000 == 0) { // System.out.println("i = " + i + ", buffer.size = " + // buffer.size()); // } Thread.sleep(1); } catch (Exception e) { e.printStackTrace(); // エラーを握りつぶす } } } // ストリームクローズ void closeStream() { try { if (bitstream != null) { // クローズする bitstream.close(); bitstream = null; } } catch (BitstreamException e) { // 例外は握りつぶす } } // インプットストリームを取得 protected InputStream getInputStream() throws IOException { if (filename == null) { return null; } // System.out.println(filename); FileInputStream fin = new FileInputStream(filename); BufferedInputStream bin = new BufferedInputStream(fin); return bin; } // 1フレームデコード private boolean decordOneFrame() { if (bitstream == null) { return false; } try { Header h = bitstream.readFrame(); if (h == null) { return false; } SampleBuffer output = (SampleBuffer) decoder.decodeFrame(h, bitstream); if (output.getBufferLength() == 0) { // System.out.println("bufferSize = " // + output.getBufferLength()); return false; } buffer.add(new BufferModel(output)); bitstream.closeFrame(); } catch (JavaLayerException ex) { return false; } return true; } } // 再生用スイングワーカー // 再生クラスを腹持ちして、再生ループを呼び出します class PlayWorker extends SwingWorker Object, Object { MyPlayer player = new MyPlayer(); // 再生ループを呼び出します @Override protected Object doInBackground() throws Exception { // System.out.println("PlayWorker#doInBackground start"); player.playRoop(); // System.out.println("PlayWorker#doInBackground end"); return null; } } // デバイスの取得 protected AudioDevice getAudioDevice() throws JavaLayerException { return FactoryRegistry.systemRegistry().createAudioDevice(); } // 再生クラス // 再生ループしかないですけど class MyPlayer { // 再生ループ // エラーが起きようが何しようがずっと回り続け、バッファの中身をデバイスに出力します // 再生モードが再生以外、バッファサイズが0の場合は再生しないで次のループに回します public void playRoop() { // System.out.println("playRoop start"); // int j = 0; while (true) { try { // j++; // if (j % 1000 == 0) { // System.out.println("j = " + j); // } if (playMode != PLAY_MODE_PLAY || buffer.size() == 0) { Thread.sleep(1); continue; } // バッファの中身を取得し、デバイスに書き込みます BufferModel model = buffer.remove(0); dev.write(model.buffer, 0, model.length); Thread.sleep(1); } catch (Exception e) { e.printStackTrace(); } } } } // ドロップターゲットリスナー // ドロップされたファイルを受け取り、最初のファイルだけを再生します class MyDropTargetListener extends DropTargetAdapter { @Override public void drop(DropTargetDropEvent dtde) { dtde.acceptDrop(DnDConstants.ACTION_COPY); boolean b = false; try { if (dtde.getTransferable().isDataFlavorSupported( DataFlavor.javaFileListFlavor)) { b = true; List File list = (List File ) dtde.getTransferable() .getTransferData(DataFlavor.javaFileListFlavor); for (File file list) { // 最初のファイルだけ取得 filename = file.getPath(); label.setText(FILE_NAME + file.getName()); // 取得したファイルを再生する stop(); play(); break; } } } catch (Exception e) { e.printStackTrace(); } finally { dtde.dropComplete(b); } } } } 解説 Javaでmp3を再生するには、Java Media Framework APIという追加のAPIが提供されています。 ですが、Java Media Framework APIは配布に難がありそうなので、JLayerというmp3を再生出来るライブラリを使ってみました。 JLayerに標準で付属の再生メソッドは、再生はできるものの、停止や一時停止はできず、 単純にメソッドを呼ぶだけだと再生終了までウィンドウが操作できなくなります。 停止や一時停止など、細かいことをする場合は、自分でデコードと再生を行うとよいようです。 サンプルの解説 ウィンドウにmp3ファイルをドロップすると再生開始します。 停止、一時停止、再生ボタンもなんとか操作できます。 デコードと再生はそれぞれ、デコードスレッド、再生スレッドを作成し独立して行います。 デコードスレッドはデコード結果をバッファに詰め込み、 再生スレッドはバッファからデコード結果を取得して再生します。 バッファに余裕を持ってデコード結果を貯めて置けるので、標準の再生メソッドよりは音の途切れが少ないかもしれません。 コメント 名前
https://w.atwiki.jp/1007k/pages/710.html
ハッピー☆マテリアル 詳細・攻略 アニメ「魔法先生ネギま!」の主題歌。 詳細は以下の通り: バージョン 難易度 最大コンボ数 天井スコア 初項 等差 アニスペ ★×8 544;481;435; 1051690点 700点 120点 ゴーゴーバグあり AC8 1050960点 アニメ曲では快晴・上昇・ハレルーヤと並び最もコンボ数が多い。 達人はわずかにふちのほうが多く、277/544がふち。 達人は、AC13現在の★×8の基準でも上位に入れるレベルである。アニスペ、AC8ではワンダーモモーイと並んで詐称曲とよく言われていた 普通譜面は達人と比べると大分楽になる。玄人譜面は、非ゴーゴータイムは達人譜面と、ゴーゴータイムは普通譜面と同じ。 分岐は最初の3小節目のみなので、どうしてもクリアしたいなら1~2小節を放置して分岐させないのが楽。わざと1~2小節で可を出しまくってフルコンマークを付けるという手段もある。無論天井スコアは狙えないが。 その為、どの譜面に回ってもフルコンクリアおよびNNは可能。スコアルートは達人譜面。 なお、全可は普通譜面、全良は達人譜面でないと達成できない。 アニスペでは開幕達人が難しい(分岐前最後のカッ以外で可を出すと玄人以下になるらしい)。AC8では比較的易しめ。 このハピマテのアーティストは、3月版の古菲、近衛木乃香、早乙女ハルナ、桜咲刹那、佐々木まき絵だそうです。 普通・玄人譜面には風船連打がある。しかし、黄色連打がないため、どの譜面にまわっても精度曲である。 ちなみに道場内ではAC8時点で全良者は4人しかいない。 かんたん ふつう むずかしい コメント 譜面
https://w.atwiki.jp/nennouryoku/pages/39.html
投稿日: 02/07/06 04 33 00016 能力名 仙里算総眼図(マテリアル・パズル) タイプ 身体能力操作・精神操作 能力系統 強化系 系統比率 未記載 能力の説明 強化するのは頭脳。(勘・記憶力・創造力等) 敵の言葉・表情・動きなどの断片的な情報を記憶・記録・展開・判断・発想・発祥・計算・創造することによって、 敵の思考を完全に把握できるようになる。 複雑な心の持ち主の思考を把握するにはそれ相応の時間が必要になる。クロロのようなキャラはまず無理。 制約\誓約 思考を把握さえすれば、敵の行動を先読みできるようになるが、敵の行動を完全先読みできる時間の限界はやはり敵によって異なる。 が、長くても1分程度が限界。 また情報を入手・構築・創造している間は頭(というか脳)にオーラが集中するため、極端に戦闘能力が落ちる。 備考 - レスポンス 類似能力 ぱくり -- 2018-02-26 18 35 06 コメント すべてのコメントを見る 強化系 精神操作 身体能力操作
https://w.atwiki.jp/0458250333/pages/177.html
マテリアップル・ツリー 林檎の実のようにエーテル・マテリアルの実る木 このマテリアップル・ツリーで取れるエーテル・マテリアルは火属性がとても強く他が控えめである 苗や接ぎ木から育てられないかと研究をしているが人工的に育てられたケースは現在存在しない
https://w.atwiki.jp/moecc/pages/525.html
モエンで購入できる目型の、カラーサンプル一覧です。 ◆課金目型の カラーサンプル ◆目型に戻る 【目次】 普通 つり目 たれ目 じと目 糸目 細長目 強気目 たれ目2 元気っ娘 キバっ娘 でか目 まる目 つり目2 まる目2 まゆ目 ◆普通 表情サンプル M 黒 茶 金 紫 桃 金青 赤緑 ¥ 緑 青 橙 赤 水 黄緑 銀 ◆つり目 表情サンプル M 黒 茶 金 紫 桃 金青 赤緑 ¥ 緑 青 橙 赤 水 黄緑 銀 ◆たれ目 表情サンプル M 黒 茶 金 紫 桃 金青 赤緑 ¥ 緑 青 橙 赤 水 黄緑 銀 ◆じと目 表情サンプル M 黒 茶 金 紫 桃 金青 赤緑 ¥ 緑 青 橙 赤 水 黄緑 銀 ◆糸目 表情サンプル M 黒 茶 金 紫 桃 金青 赤緑 ¥ 緑 青 橙 赤 水 黄緑 銀 ※全て同じなので他の表情での表示を検討中・・・ ◆細長目 表情サンプル M 黒 茶 金 紫 桃 金青 赤緑 ¥ 緑 青 橙 赤 水 黄緑 銀 ◆強気目 表情サンプル M 黒 茶 金 紫 桃 金青 赤緑 ¥ 緑 青 橙 赤 水 黄緑 銀 ◆たれ目2 表情サンプル M 黒 茶 金 紫 桃 金青 赤緑 ¥ 緑 青 橙 赤 水 黄緑 銀 ◆元気っ娘 表情サンプル M 黒 茶 金 紫 桃 金青 赤緑 ¥ 緑 青 橙 赤 水 黄緑 銀 ◆キバっ娘 表情サンプル M 黒 茶 金 紫 桃 金青 赤緑 ¥ 緑 青 橙 赤 水 黄緑 銀 ◆でか目 表情サンプル M 黒 茶 金 紫 桃 金青 赤緑 ¥ 緑 青 橙 赤 水 黄緑 銀 ◆まる目 表情サンプル M 黒 茶 金 紫 桃 金青 赤緑 ¥ 緑 青 橙 赤 水 黄緑 銀 ◆つり目2 表情サンプル M 黒 茶 金 紫 桃 金青 赤緑 ¥ 緑 青 橙 赤 水 黄緑 銀 ◆まる目2 表情サンプル M 黒 茶 金 紫 桃 金青 赤緑 ¥ 緑 青 橙 赤 水 黄緑 銀 ◆まゆ目 表情サンプル M 黒 茶 金 紫 桃 金青 赤緑 ¥ 緑 青 橙 赤 水 黄緑 銀 ▲ページTOPへ コメント一覧 糸目は照とかすこし目が開くけどその時色が分かるのかなぁ でもいちいち検証するのは面倒… -- (名無しさん) 2011-12-28 00 33 45 名前 コメント すべてのコメントを見る
https://w.atwiki.jp/ragnabreaksaga/pages/92.html
※ページ順に掲載 目次 覚醒のマテリアルピースの入手方法 覚醒 P.01-05 覚醒 P.06-10 覚醒 P.11-15 覚醒のマテリアルピースの入手方法 マンスリーガチャなどで入手できます。 覚醒 P.01-05 【UPDATE】 2023/8/5 名前 属性 レア 空 発動 攻UP 防UP 率UP 速UP 他(攻) 攻DN 防DN 速DN 率DN 他(妨) 備考 名前 属性 レア 空 発動 攻UP 防UP 率UP 速UP 他(攻) 攻DN 防DN 率DN 速DN 他(妨) 備考 【召喚】覚醒・ヨルムンガルド マテ 行動時 前列 ダメージ 前列 猛毒 確率 覚醒01-11000個 【召喚】覚醒・フェニックス マテ 行動時 全体 蘇生 最大5体 全体 ダメージ 覚醒01-21000個 【召喚】覚醒・炎翔龍ブラガバドロス マテ 行動時 前列 ダメージ 前列 大火傷 確率 覚醒01-31000個 【召喚】覚醒・ジェノデーモン マテ 行動時 全体 ダメージ 大全体 行動封 1T 確率 覚醒01-41000個 【召喚】覚醒・イフリート マテ 行動時 全体 ダメージ 特大低発動 覚醒01-51000個 【召喚】覚醒・ドルガティラモス マテ 行動時 5体 強攻撃 5体 眠り 確率 覚醒01-61000個 【召喚】覚醒・デュアルドレイク マテ 行動時 2体 ダメージ 特大2体 スキル封 確率 覚醒02-11000個 【召喚】覚醒・アシュラヴァル マテ 行動時 5体 ダメージ 大 覚醒02-21500個 【召喚】覚醒・ヴォイドザウラ マテ 行動時 一列 体力を大きく奪う 覚醒02-31500個 名前 属性 レア 空 発動 攻UP 防UP 率UP 速UP 他(攻) 攻DN 防DN 率DN 速DN 他(妨) 備考 【召喚】覚醒・マギレヴィウム マテ 行動時 全体 強力なダメージ 全体 猛毒 確率 覚醒02-42000個 【召喚】覚醒・ガルケンタロス マテ 行動時 5体 ダメージ 大5体 大火傷 確率 覚醒02-51500個 【召喚】覚醒・フェザーエッジ マテ 行動時 周囲 回復 中確率 全体 ダメージ 大 覚醒02-62000個 【召喚】覚醒・ヘカトンブリズ マテ 開幕 列 特大高確率 覚醒03-11500個発動時期未検証 【召喚】覚醒・インドラ マテ 行動時 5体 大確率 5体 ダメージ 大 覚醒03-22000個 【召喚】覚醒・ソルドエスパーダ マテ 行動時 5回 大火傷 確率 覚醒03-31500個 【召喚】覚醒・レーベリオン マテ 開幕 全体 大 全体 大 覚醒03-42000個発動時期未検証 【召喚】覚醒・バブルディンゴ マテ 開幕 列 HPup 25% 覚醒03-51500個 【召喚】覚醒・バルクティマ マテ 行動時 5体 ダメージ 特大低発動5体 毒 確率 覚醒03-62000個 【召喚】覚醒・シヴァ マテ 行動時 全体 ダメージ 大全体 眠り 確率 覚醒04-11500個 名前 属性 レア 空 発動 攻UP 防UP 率UP 速UP 他(攻) 攻DN 防DN 率DN 速DN 他(妨) 備考 【召喚】覚醒・フレイムフォボス マテ 行動時 全体 ダメージ 大高確率全体 大火傷 確率 覚醒04-22000個 【召喚】覚醒・スラングバイパー マテ 行動時 5体 HP吸い取り 覚醒04-31500個 【召喚】覚醒・盗賊帝アーマー マテ 行動時 全体 大高確率 覚醒04-42000個 【召喚】覚醒・トライアデモン マテ 行動時 前列 ダメージ 大大火傷 高確率 覚醒04-51500個 【召喚】覚醒・ゴルドデスサイズ マテ 行動時 全体 大確率 全体 ダメージ 大 覚醒04-62000個 【召喚】覚醒・ファントムアビス マテ 行動時 2体 ダメージ 特大2体 眠り 確実 覚醒05-11500個 【召喚】覚醒・ペルセドラ マテ 行動時 大確率 05回 高確率 覚醒05-22000個 【召喚】覚醒・オルガヴォルフ マテ 行動時 自分 小高確率 前列 ダメージ 覚醒05-31500個 【召喚】覚醒・デュランダイラス マテ 開幕 列 特大 列 特大 覚醒05-42000個発動時期未検証 【召喚】覚醒・オルトディアム マテ 開幕 5体 ダメージ 大5体 毒 高確率 覚醒05-51500個 名前 属性 レア 空 発動 攻UP 防UP 率UP 速UP 他(攻) 攻DN 防DN 率DN 速DN 他(妨) 備考 【召喚】覚醒・マキナ マテ 開幕 全体 ダメージ 大全体 眠り 確率 覚醒05-62000個 覚醒 P.06-10 【UPDATE】 2023/8/5 名前 属性 レア 空 発動 攻UP 防UP 率UP 速UP 他(攻) 攻DN 防DN 速DN 率DN 他(妨) 備考 名前 属性 レア 空 発動 攻UP 防UP 率UP 速UP 他(攻) 攻DN 防DN 率DN 速DN 他(妨) 備考 【召喚】覚醒・ゾディアックシザー マテ 開幕 列 特大高確率 5体 ダメージ 大5体 毒 高確率 覚醒06-11500個 【召喚】覚醒・グランギドラ マテ 開幕 全体 ダメージ 大高確率全体 大火傷 確率 覚醒06-22000個 【召喚】覚醒・オオガミヌシ マテ 開幕 列 特大高確率 2体 ダメージ 特大2体 眠り 確実 覚醒06-31500個 【召喚】覚醒・アヴィス マテ 開幕 大確率 全体 ダメージ 大 覚醒06-42000個 【召喚】覚醒・アルマギオン マテ 開幕 自分 中高確率 4体 ダメージ 覚醒06-51800個 【召喚】覚醒・アドウェルーサー マテ 開幕 自分 中高確率 2体 大確率 2体 大確率 2体 1T目 特大確率 覚醒06-62500個 【召喚】覚醒・ライノグラトス マテ 開幕 全体※ 大高確率 全体※ 大高確率 覚醒07-11500個※魔属性のみ 【召喚】覚醒・セラフミラージュ マテ 開幕 大確率 5体 ダメージ 特大低発動5体 麻痺 確率 覚醒07-22000個 【召喚】覚醒・トレントクリーパー マテ 開幕 全体※ 大高確率 全体※ 大高確率 覚醒07-31500個※地属性のみ 名前 属性 レア 空 発動 攻UP 防UP 率UP 速UP 他(攻) 攻DN 防DN 率DN 速DN 他(妨) 備考 【召喚】覚醒・ギガノテクス マテ 開幕 前列※ 大 前列※ 大 覚醒07-42000個※天、地属性 【召喚】覚醒・スパークエッジ マテ 開幕 全体※ 大高確率 全体※ 大高確率 覚醒07-51500個※天属性のみ 【召喚】覚醒・アポカリプス マテ 開幕 前列※ 大高確率 覚醒07-62000個※魔、天属性 【召喚】覚醒・ヴァーリ マテ 開幕 全体※ 大高確率 全体※ 大高確率 覚醒08-11500個※地属性のみ 【召喚】覚醒・アポリュオン マテ 開幕 前列※ 超大高確率 覚醒08-22000個※地、魔属性 【召喚】覚醒・デザイアペスト マテ 開幕 全体※ 大高確率 全体※ 大高確率 覚醒08-31500個※魔属性のみ 【召喚】覚醒・サイクロプス マテ 開幕 前列※ 超大高確率 覚醒08-42000個※天、地属性 【召喚】覚醒・グリュプス マテ 開幕 前列※ 特大高確率 前列 特大高確率 覚醒08-51500個※地、魔属性のみ 【召喚】覚醒・キングティターン マテ 開幕 両隣 超大高確率 3体 特大高確率 覚醒08-62000個 【召喚】覚醒・アースデーモン マテ 開幕 前列※ 特大高確率 前列※ 特大高確率 覚醒09-11500個※天、魔属性のみ 名前 属性 レア 空 発動 攻UP 防UP 率UP 速UP 他(攻) 攻DN 防DN 率DN 速DN 他(妨) 備考 【召喚】覚醒・バハムート マテ 開幕 5体 ダメージ 特大5体 大火傷 高確率 覚醒09-22500個 【召喚】覚醒・イビルデューサ マテ 開幕 全体※ 大高確率 全体※ 大高確率 覚醒09-31500個※天属性のみ 【召喚】覚醒・閻魔大王 マテ 開幕 5体 極大高確率 5体 ダメージ 特大 覚醒09-42500個 【召喚】覚醒・キラーウルフ マテ 開幕 前列※ 特大高確率 前列※ 特大高確率 覚醒09-51500個※天、地属性のみ 【召喚】覚醒・牛魔王 マテ 開幕 隣接 超大高確率 3体 超大高確率 覚醒09-62500個 【召喚】覚醒・オーク マテ 開幕 3体 極大高確率 3体 ダメージ 特大 覚醒10-22500個 【召喚】覚醒・フェンリル マテ 開幕 前列※ 特大高確率 前列※ 特大高確率 覚醒10-31500個※天、魔属性のみ 【召喚】覚醒・ヴリトラ マテ 開幕 前列※ 特大高確率 前列※ 特大高確率 覚醒10-31500個※魔、地属性のみ 【召喚】覚醒・クリムゾンヴェル マテ 開幕 3体※ ダメージ 特大3体※ スキル封 高確率 覚醒10-42500個※後列優先 【召喚】覚醒・ワイバーン マテ 開幕 前列※ 特大高確率 前列※ 特大高確率 覚醒10-51500個※天、地属性のみ 名前 属性 レア 空 発動 攻UP 防UP 率UP 速UP 他(攻) 攻DN 防DN 率DN 速DN 他(妨) 備考 【召喚】覚醒・黄金大王カルメハルメ マテ 開幕 3体※ ダメージ 特大3体※ 眠り 高確率 覚醒10-62500個※後列優先 覚醒 P.11-15 【UPDATE】 2023/8/5 名前 属性 レア 空 発動 攻UP 防UP 率UP 速UP 他(攻) 攻DN 防DN 速DN 率DN 他(妨) 備考 名前 属性 レア 空 発動 攻UP 防UP 率UP 速UP 他(攻) 攻DN 防DN 率DN 速DN 他(妨) 備考 【召喚】覚醒・邪眼鬼バルクス マテ 開幕 前列※ 特大高確率 前列※ 特大高確率 覚醒11-11500個※天、魔属性のみ 【召喚】覚醒・ファンロン マテ 開幕 3体※ ダメージ 特大3体※ 麻痺 高確率 覚醒11-22500個※後列優先 【召喚】覚醒・闇霊樹像トレントクリーパーEX マテ 開幕 前列※ 特大高確率 前列※ 特大高確率 覚醒11-31500個※魔、地属性のみ 【召喚】覚醒・ケースト マテ 開幕 列 HPup 30%より高確率 覚醒11-42500個 【召喚】覚醒・スパークエッジex マテ 開幕 前列※ 特大高確率 前列※ 特大高確率 覚醒11-51500個※天、地属性のみ 【召喚】覚醒・エレボス マテ 開幕 両隣 超大高確率 3体 特大高確率 覚醒11-62500個 【召喚】覚醒・グリュプスEX マテ 開幕 前列※ 特大高確率 前列※ 特大高確率 覚醒12-11500個※天、魔属性のみ 【召喚】覚醒・ペガサス マテ 開幕 両隣 回復 大高確率 3体 ダメージ 特大 覚醒12-22500個 【召喚】覚醒アポリュオンEX マテ 開幕 前列※ 特大高確率 前列※ 特大高確率 覚醒12-31500個※魔、地属性のみ 名前 属性 レア 空 発動 攻UP 防UP 率UP 速UP 他(攻) 攻DN 防DN 率DN 速DN 他(妨) 備考 【召喚】覚醒・ダンデライオン マテ 開幕 3体※ ダメージ 特大3体※ 眠り 高確率 覚醒12-42500個※前列優先 【召喚】覚醒水晶竜EX マテ 開幕 前列※ 特大高確率 前列※ 特大高確率 覚醒12-51500個※天、地属性のみ 【召喚】覚醒・九尾狐 マテ 開幕 3体※ ダメージ 特大3体※ 麻痺 高確率 覚醒12-62500個※前列優先 ページTOPへ戻る